///////////////////////////
//      定义全局变量     //
///////////////////////////
//核心参数
var totalCount;		 //文件列表长度
var start;            //文件列表当前索引
var limit;            //每页显示个数
//辅助参数
var last;			  //最后一页
var displayPage;	 //分页控制按钮显示个数
var first = true;	//是否第一次进行分页
//需要另外实现的函数
var getListFun;
var getCountFun;

///////////////////////////
//      页面控制部分     //
///////////////////////////
//页面跳转
function goToPage(num){
	if(num>last||num<1){
            //alert("ok");
		alert('数字超出范围！'+num);
	}else{
		start = limit*(num-1);
		setList();
	}
}
//控制按钮显示
function buttomDisplay(){
	//根据总共要显示的分页按钮数设置当前页面前后的按钮数
	var totalPre = parseInt(displayPage/2);
	var totalNext = displayPage-1-totalPre;

	var page = parseInt(start/limit+1);//当前是第几页
	var pre = (page-1)<totalPre?(page-1):totalPre;
	var next = (last-page)<totalNext?(last-page):totalNext;
	//生成要显示的页码
	var pageList = [];
	if(last-page<totalNext){
		pre += totalNext - last + page;
	}
	for(var i=pre;i>=0;i--){
		if(page-i<=0){
			continue;
		}
		pageList.push(page-i);
	}
	if(totalPre>pre){
		next +=totalPre-pre;
	}
	for(var j=1;j<=next;j++){
		if(page+j>last){
			break;
		}
		pageList.push(page+j);
	}
	//生成页码按钮的html
	var html = "";
	for(var p=0; p<pageList.length;p++ ){
		var pn = pageList[p]
		if(pn==page){
			html+='<a href="#" class="page number current" title="'+pn+'">'+pn+'</a>';
			continue;
		}
		html+='<a href="#" class="page number" title="'+pn+'">'+pn+'</a>'
	}
	$(".pageList").html(html);
	$(".pageList .page").click(function(){
		var num = $(this).attr("title");
		goToPage(num);
                return false;
	});
}
//服务器返回分页查询结果
function setList(){
	//这个函数需要另外实现，无需返回值
	getListFun();
	//修改当前页码
	buttomDisplay();
}
//服务器返回totalCount
function setCount(count){
	totalCount = count;
	//修改总页数
	last = parseInt(totalCount /limit) + (totalCount%limit==0?0:1);
	if(last==0){
		last = 1;
	}
	$("a.lastPage").attr("title", last);
}

///////////////////////////
//      辅助方法部分     //
///////////////////////////
//获取URL参数


function request(paras){
    var url = location.href;
    var paraString = url.substring(url.indexOf("?")+1,url.length).split("&");
    var paraObj = {}
    for (i=0; j=paraString[i]; i++){
        paraObj[j.substring(0,j.indexOf("=")).toLowerCase()] = j.substring(j.indexOf
            ("=")+1,j.length);
    }
    var returnValue = paraObj[paras.toLowerCase()];
    if(typeof(returnValue)=="undefined"){
        return "";
    }else{

        return returnValue.split("#")[0];

    }
}
///////////////////////////
//       页面初始化      //
///////////////////////////
//页面初始化
function pageInit(){
	last = 0;
	start = 0;
	if(!limit){
		limit = 10;//默认为每页显示10个
	}
	if(!displayPage){
		displayPage = 5;//默认显示页码5个
	}
	getCountFun();//计算列表总条数
	setList();	//获取新闻列表

	//跟踪ajax，如果last已被设置则显示分页控制按钮
	var check = window.setInterval(function(){
		if(last){//如果last已经被计算出来,则显示分页按钮
			buttomDisplay();
			window.clearInterval(check);
		}
	}, 200);
	if(first){
		$(".page").click(function(){
			var num = $(this).attr("title");
			goToPage(num);
                        return false;
		});
		first = false;
	}
}

